// 1 引入mongoose模块(操作mongoDb的)
const mongoose = require('mongoose');
//2 连接数据库
mongoose.connect('mongodb://localhost:27017/ys', { useNewUrlParser: true, useUnifiedTopology: true }, (err) => {
    if (err) {
        console.log(err);
        return;
    }
    console.log("数据库连接成功");
});
//3 创建一个Schema
// Schema的数据结构的属性名必须和表中的属性名要一致
var studentSchema = new mongoose.Schema({
    name: String,
    age: Number,
    gender: String,
    score: Number
});
//4 创建一个用来操作数据的模型
var studentModel = mongoose.model("studentModel", studentSchema, "students");
//5 使用数据模块来对数据库中的数据进行操作
// 添加
/*
studentModel.create({
    "name": "李菊花", "age": 21, "gender": "男",
    "score": 60
}, (err, data) => {
    if (err) {
        console.log(err);
        return;
    }
    console.log(data);
});
*/
//查询
/*
参数1： 查询条件
参数2： 需要显示的字段
参数3： 回调函数
*/
//1 查询所有
/*studentModel.find((err,data)=>{
    if(err){
      console.log(err);
      return 
    }
    console.log(data);
})*/

//查询名字叫李菊花的同学
/*studentModel.find({"name":"李菊花"},(err,data)=>{
    if(err){
        console.log(err);
        return 
      }
      console.log(data);
})*/
//查询姓名叫李菊花，性别为男
/*studentModel.find({"name":"李菊花","gender":"男"},(err,data)=>{
    if(err){
        console.log(err);
        return 
      }
      console.log(data);
})*/
//查询年龄大于20的学生
/*studentModel.find({"age":{$gte:20},"gender":"男"},(err,data)=>{
    if(err){
        console.log(err);
        return 
      }
      console.log(data);
})*/

//查询年龄大于18,小于等20的学生
/*studentModel.find({"age":{$gt:18,$lte:20}},(err,data)=>{
    if(err){
        console.log(err);
        return 
      }
      console.log(data);
})*/
//查询年龄为20 或者性别为男的学生
studentModel.find({$or:[{"age":20},{"gender":"男"}]},(err,data)=>{
    if(err){
        console.log(err);
        return 
      }
      console.log(data);
})



